package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.MbtiPersonalityType;

/**
 * MBTI人格类型描述Mapper接口
 * 
 * @author ruoyi
 * @date 2025-01-21
 */
public interface MbtiPersonalityTypeMapper 
{
    /**
     * 查询MBTI人格类型描述
     * 
     * @param typeId MBTI人格类型描述主键
     * @return MBTI人格类型描述
     */
    public MbtiPersonalityType selectMbtiPersonalityTypeByTypeId(Long typeId);

    /**
     * 查询MBTI人格类型描述列表
     * 
     * @param mbtiPersonalityType MBTI人格类型描述
     * @return MBTI人格类型描述集合
     */
    public List<MbtiPersonalityType> selectMbtiPersonalityTypeList(MbtiPersonalityType mbtiPersonalityType);

    /**
     * 根据类型编码查询MBTI人格类型描述
     * 
     * @param typeCode 类型编码
     * @return MBTI人格类型描述
     */
    public MbtiPersonalityType selectMbtiPersonalityTypeByTypeCode(String typeCode);

    /**
     * 查询所有MBTI人格类型
     * 
     * @return MBTI人格类型描述集合
     */
    public List<MbtiPersonalityType> selectAllPersonalityTypes();

    /**
     * 新增MBTI人格类型描述
     * 
     * @param mbtiPersonalityType MBTI人格类型描述
     * @return 结果
     */
    public int insertMbtiPersonalityType(MbtiPersonalityType mbtiPersonalityType);

    /**
     * 修改MBTI人格类型描述
     * 
     * @param mbtiPersonalityType MBTI人格类型描述
     * @return 结果
     */
    public int updateMbtiPersonalityType(MbtiPersonalityType mbtiPersonalityType);

    /**
     * 删除MBTI人格类型描述
     * 
     * @param typeId MBTI人格类型描述主键
     * @return 结果
     */
    public int deleteMbtiPersonalityTypeByTypeId(Long typeId);

    /**
     * 批量删除MBTI人格类型描述
     * 
     * @param typeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteMbtiPersonalityTypeByTypeIds(Long[] typeIds);

    /**
     * 校验类型编码是否唯一
     * 
     * @param typeCode 类型编码
     * @return 结果
     */
    public MbtiPersonalityType checkTypeCodeUnique(String typeCode);

    /**
     * 根据主键ID查询MBTI类型
     *
     * @param id 主键ID
     * @return MBTI类型
     */
    public MbtiPersonalityType selectMbtiPersonalityTypeById(Long id);

    /**
     * 根据主键ID批量查询MBTI类型
     *
     * @param ids 主键ID集合
     * @return MBTI类型集合
     */
    public List<MbtiPersonalityType> selectMbtiPersonalityTypeByIds(Long[] ids);
}
